package com.hrrt.home.dao.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class HomeDeviceStatusExample implements Serializable {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private static final long serialVersionUID = 1L;

    public HomeDeviceStatusExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria implements Serializable {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIsNull() {
            addCriterion("device_id is null");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIsNotNull() {
            addCriterion("device_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceIdEqualTo(Integer value) {
            addCriterion("device_id =", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotEqualTo(Integer value) {
            addCriterion("device_id <>", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdGreaterThan(Integer value) {
            addCriterion("device_id >", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("device_id >=", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdLessThan(Integer value) {
            addCriterion("device_id <", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdLessThanOrEqualTo(Integer value) {
            addCriterion("device_id <=", value, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdIn(List<Integer> values) {
            addCriterion("device_id in", values, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotIn(List<Integer> values) {
            addCriterion("device_id not in", values, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdBetween(Integer value1, Integer value2) {
            addCriterion("device_id between", value1, value2, "deviceId");
            return (Criteria) this;
        }

        public Criteria andDeviceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("device_id not between", value1, value2, "deviceId");
            return (Criteria) this;
        }

        public Criteria andStatus001IsNull() {
            addCriterion("status001 is null");
            return (Criteria) this;
        }

        public Criteria andStatus001IsNotNull() {
            addCriterion("status001 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus001EqualTo(String value) {
            addCriterion("status001 =", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001NotEqualTo(String value) {
            addCriterion("status001 <>", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001GreaterThan(String value) {
            addCriterion("status001 >", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001GreaterThanOrEqualTo(String value) {
            addCriterion("status001 >=", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001LessThan(String value) {
            addCriterion("status001 <", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001LessThanOrEqualTo(String value) {
            addCriterion("status001 <=", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001Like(String value) {
            addCriterion("status001 like", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001NotLike(String value) {
            addCriterion("status001 not like", value, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001In(List<String> values) {
            addCriterion("status001 in", values, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001NotIn(List<String> values) {
            addCriterion("status001 not in", values, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001Between(String value1, String value2) {
            addCriterion("status001 between", value1, value2, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus001NotBetween(String value1, String value2) {
            addCriterion("status001 not between", value1, value2, "status001");
            return (Criteria) this;
        }

        public Criteria andStatus002IsNull() {
            addCriterion("status002 is null");
            return (Criteria) this;
        }

        public Criteria andStatus002IsNotNull() {
            addCriterion("status002 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus002EqualTo(String value) {
            addCriterion("status002 =", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002NotEqualTo(String value) {
            addCriterion("status002 <>", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002GreaterThan(String value) {
            addCriterion("status002 >", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002GreaterThanOrEqualTo(String value) {
            addCriterion("status002 >=", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002LessThan(String value) {
            addCriterion("status002 <", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002LessThanOrEqualTo(String value) {
            addCriterion("status002 <=", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002Like(String value) {
            addCriterion("status002 like", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002NotLike(String value) {
            addCriterion("status002 not like", value, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002In(List<String> values) {
            addCriterion("status002 in", values, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002NotIn(List<String> values) {
            addCriterion("status002 not in", values, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002Between(String value1, String value2) {
            addCriterion("status002 between", value1, value2, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus002NotBetween(String value1, String value2) {
            addCriterion("status002 not between", value1, value2, "status002");
            return (Criteria) this;
        }

        public Criteria andStatus003IsNull() {
            addCriterion("status003 is null");
            return (Criteria) this;
        }

        public Criteria andStatus003IsNotNull() {
            addCriterion("status003 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus003EqualTo(String value) {
            addCriterion("status003 =", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003NotEqualTo(String value) {
            addCriterion("status003 <>", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003GreaterThan(String value) {
            addCriterion("status003 >", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003GreaterThanOrEqualTo(String value) {
            addCriterion("status003 >=", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003LessThan(String value) {
            addCriterion("status003 <", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003LessThanOrEqualTo(String value) {
            addCriterion("status003 <=", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003Like(String value) {
            addCriterion("status003 like", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003NotLike(String value) {
            addCriterion("status003 not like", value, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003In(List<String> values) {
            addCriterion("status003 in", values, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003NotIn(List<String> values) {
            addCriterion("status003 not in", values, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003Between(String value1, String value2) {
            addCriterion("status003 between", value1, value2, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus003NotBetween(String value1, String value2) {
            addCriterion("status003 not between", value1, value2, "status003");
            return (Criteria) this;
        }

        public Criteria andStatus004IsNull() {
            addCriterion("status004 is null");
            return (Criteria) this;
        }

        public Criteria andStatus004IsNotNull() {
            addCriterion("status004 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus004EqualTo(String value) {
            addCriterion("status004 =", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004NotEqualTo(String value) {
            addCriterion("status004 <>", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004GreaterThan(String value) {
            addCriterion("status004 >", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004GreaterThanOrEqualTo(String value) {
            addCriterion("status004 >=", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004LessThan(String value) {
            addCriterion("status004 <", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004LessThanOrEqualTo(String value) {
            addCriterion("status004 <=", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004Like(String value) {
            addCriterion("status004 like", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004NotLike(String value) {
            addCriterion("status004 not like", value, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004In(List<String> values) {
            addCriterion("status004 in", values, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004NotIn(List<String> values) {
            addCriterion("status004 not in", values, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004Between(String value1, String value2) {
            addCriterion("status004 between", value1, value2, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus004NotBetween(String value1, String value2) {
            addCriterion("status004 not between", value1, value2, "status004");
            return (Criteria) this;
        }

        public Criteria andStatus005IsNull() {
            addCriterion("status005 is null");
            return (Criteria) this;
        }

        public Criteria andStatus005IsNotNull() {
            addCriterion("status005 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus005EqualTo(String value) {
            addCriterion("status005 =", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005NotEqualTo(String value) {
            addCriterion("status005 <>", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005GreaterThan(String value) {
            addCriterion("status005 >", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005GreaterThanOrEqualTo(String value) {
            addCriterion("status005 >=", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005LessThan(String value) {
            addCriterion("status005 <", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005LessThanOrEqualTo(String value) {
            addCriterion("status005 <=", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005Like(String value) {
            addCriterion("status005 like", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005NotLike(String value) {
            addCriterion("status005 not like", value, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005In(List<String> values) {
            addCriterion("status005 in", values, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005NotIn(List<String> values) {
            addCriterion("status005 not in", values, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005Between(String value1, String value2) {
            addCriterion("status005 between", value1, value2, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus005NotBetween(String value1, String value2) {
            addCriterion("status005 not between", value1, value2, "status005");
            return (Criteria) this;
        }

        public Criteria andStatus006IsNull() {
            addCriterion("status006 is null");
            return (Criteria) this;
        }

        public Criteria andStatus006IsNotNull() {
            addCriterion("status006 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus006EqualTo(String value) {
            addCriterion("status006 =", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006NotEqualTo(String value) {
            addCriterion("status006 <>", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006GreaterThan(String value) {
            addCriterion("status006 >", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006GreaterThanOrEqualTo(String value) {
            addCriterion("status006 >=", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006LessThan(String value) {
            addCriterion("status006 <", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006LessThanOrEqualTo(String value) {
            addCriterion("status006 <=", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006Like(String value) {
            addCriterion("status006 like", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006NotLike(String value) {
            addCriterion("status006 not like", value, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006In(List<String> values) {
            addCriterion("status006 in", values, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006NotIn(List<String> values) {
            addCriterion("status006 not in", values, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006Between(String value1, String value2) {
            addCriterion("status006 between", value1, value2, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus006NotBetween(String value1, String value2) {
            addCriterion("status006 not between", value1, value2, "status006");
            return (Criteria) this;
        }

        public Criteria andStatus007IsNull() {
            addCriterion("status007 is null");
            return (Criteria) this;
        }

        public Criteria andStatus007IsNotNull() {
            addCriterion("status007 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus007EqualTo(String value) {
            addCriterion("status007 =", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007NotEqualTo(String value) {
            addCriterion("status007 <>", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007GreaterThan(String value) {
            addCriterion("status007 >", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007GreaterThanOrEqualTo(String value) {
            addCriterion("status007 >=", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007LessThan(String value) {
            addCriterion("status007 <", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007LessThanOrEqualTo(String value) {
            addCriterion("status007 <=", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007Like(String value) {
            addCriterion("status007 like", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007NotLike(String value) {
            addCriterion("status007 not like", value, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007In(List<String> values) {
            addCriterion("status007 in", values, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007NotIn(List<String> values) {
            addCriterion("status007 not in", values, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007Between(String value1, String value2) {
            addCriterion("status007 between", value1, value2, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus007NotBetween(String value1, String value2) {
            addCriterion("status007 not between", value1, value2, "status007");
            return (Criteria) this;
        }

        public Criteria andStatus008IsNull() {
            addCriterion("status008 is null");
            return (Criteria) this;
        }

        public Criteria andStatus008IsNotNull() {
            addCriterion("status008 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus008EqualTo(String value) {
            addCriterion("status008 =", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008NotEqualTo(String value) {
            addCriterion("status008 <>", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008GreaterThan(String value) {
            addCriterion("status008 >", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008GreaterThanOrEqualTo(String value) {
            addCriterion("status008 >=", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008LessThan(String value) {
            addCriterion("status008 <", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008LessThanOrEqualTo(String value) {
            addCriterion("status008 <=", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008Like(String value) {
            addCriterion("status008 like", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008NotLike(String value) {
            addCriterion("status008 not like", value, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008In(List<String> values) {
            addCriterion("status008 in", values, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008NotIn(List<String> values) {
            addCriterion("status008 not in", values, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008Between(String value1, String value2) {
            addCriterion("status008 between", value1, value2, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus008NotBetween(String value1, String value2) {
            addCriterion("status008 not between", value1, value2, "status008");
            return (Criteria) this;
        }

        public Criteria andStatus009IsNull() {
            addCriterion("status009 is null");
            return (Criteria) this;
        }

        public Criteria andStatus009IsNotNull() {
            addCriterion("status009 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus009EqualTo(String value) {
            addCriterion("status009 =", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009NotEqualTo(String value) {
            addCriterion("status009 <>", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009GreaterThan(String value) {
            addCriterion("status009 >", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009GreaterThanOrEqualTo(String value) {
            addCriterion("status009 >=", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009LessThan(String value) {
            addCriterion("status009 <", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009LessThanOrEqualTo(String value) {
            addCriterion("status009 <=", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009Like(String value) {
            addCriterion("status009 like", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009NotLike(String value) {
            addCriterion("status009 not like", value, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009In(List<String> values) {
            addCriterion("status009 in", values, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009NotIn(List<String> values) {
            addCriterion("status009 not in", values, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009Between(String value1, String value2) {
            addCriterion("status009 between", value1, value2, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus009NotBetween(String value1, String value2) {
            addCriterion("status009 not between", value1, value2, "status009");
            return (Criteria) this;
        }

        public Criteria andStatus010IsNull() {
            addCriterion("status010 is null");
            return (Criteria) this;
        }

        public Criteria andStatus010IsNotNull() {
            addCriterion("status010 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus010EqualTo(String value) {
            addCriterion("status010 =", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010NotEqualTo(String value) {
            addCriterion("status010 <>", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010GreaterThan(String value) {
            addCriterion("status010 >", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010GreaterThanOrEqualTo(String value) {
            addCriterion("status010 >=", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010LessThan(String value) {
            addCriterion("status010 <", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010LessThanOrEqualTo(String value) {
            addCriterion("status010 <=", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010Like(String value) {
            addCriterion("status010 like", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010NotLike(String value) {
            addCriterion("status010 not like", value, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010In(List<String> values) {
            addCriterion("status010 in", values, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010NotIn(List<String> values) {
            addCriterion("status010 not in", values, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010Between(String value1, String value2) {
            addCriterion("status010 between", value1, value2, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus010NotBetween(String value1, String value2) {
            addCriterion("status010 not between", value1, value2, "status010");
            return (Criteria) this;
        }

        public Criteria andStatus011IsNull() {
            addCriterion("status011 is null");
            return (Criteria) this;
        }

        public Criteria andStatus011IsNotNull() {
            addCriterion("status011 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus011EqualTo(String value) {
            addCriterion("status011 =", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011NotEqualTo(String value) {
            addCriterion("status011 <>", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011GreaterThan(String value) {
            addCriterion("status011 >", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011GreaterThanOrEqualTo(String value) {
            addCriterion("status011 >=", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011LessThan(String value) {
            addCriterion("status011 <", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011LessThanOrEqualTo(String value) {
            addCriterion("status011 <=", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011Like(String value) {
            addCriterion("status011 like", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011NotLike(String value) {
            addCriterion("status011 not like", value, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011In(List<String> values) {
            addCriterion("status011 in", values, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011NotIn(List<String> values) {
            addCriterion("status011 not in", values, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011Between(String value1, String value2) {
            addCriterion("status011 between", value1, value2, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus011NotBetween(String value1, String value2) {
            addCriterion("status011 not between", value1, value2, "status011");
            return (Criteria) this;
        }

        public Criteria andStatus012IsNull() {
            addCriterion("status012 is null");
            return (Criteria) this;
        }

        public Criteria andStatus012IsNotNull() {
            addCriterion("status012 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus012EqualTo(String value) {
            addCriterion("status012 =", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012NotEqualTo(String value) {
            addCriterion("status012 <>", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012GreaterThan(String value) {
            addCriterion("status012 >", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012GreaterThanOrEqualTo(String value) {
            addCriterion("status012 >=", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012LessThan(String value) {
            addCriterion("status012 <", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012LessThanOrEqualTo(String value) {
            addCriterion("status012 <=", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012Like(String value) {
            addCriterion("status012 like", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012NotLike(String value) {
            addCriterion("status012 not like", value, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012In(List<String> values) {
            addCriterion("status012 in", values, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012NotIn(List<String> values) {
            addCriterion("status012 not in", values, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012Between(String value1, String value2) {
            addCriterion("status012 between", value1, value2, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus012NotBetween(String value1, String value2) {
            addCriterion("status012 not between", value1, value2, "status012");
            return (Criteria) this;
        }

        public Criteria andStatus013IsNull() {
            addCriterion("status013 is null");
            return (Criteria) this;
        }

        public Criteria andStatus013IsNotNull() {
            addCriterion("status013 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus013EqualTo(String value) {
            addCriterion("status013 =", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013NotEqualTo(String value) {
            addCriterion("status013 <>", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013GreaterThan(String value) {
            addCriterion("status013 >", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013GreaterThanOrEqualTo(String value) {
            addCriterion("status013 >=", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013LessThan(String value) {
            addCriterion("status013 <", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013LessThanOrEqualTo(String value) {
            addCriterion("status013 <=", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013Like(String value) {
            addCriterion("status013 like", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013NotLike(String value) {
            addCriterion("status013 not like", value, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013In(List<String> values) {
            addCriterion("status013 in", values, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013NotIn(List<String> values) {
            addCriterion("status013 not in", values, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013Between(String value1, String value2) {
            addCriterion("status013 between", value1, value2, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus013NotBetween(String value1, String value2) {
            addCriterion("status013 not between", value1, value2, "status013");
            return (Criteria) this;
        }

        public Criteria andStatus014IsNull() {
            addCriterion("status014 is null");
            return (Criteria) this;
        }

        public Criteria andStatus014IsNotNull() {
            addCriterion("status014 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus014EqualTo(String value) {
            addCriterion("status014 =", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014NotEqualTo(String value) {
            addCriterion("status014 <>", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014GreaterThan(String value) {
            addCriterion("status014 >", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014GreaterThanOrEqualTo(String value) {
            addCriterion("status014 >=", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014LessThan(String value) {
            addCriterion("status014 <", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014LessThanOrEqualTo(String value) {
            addCriterion("status014 <=", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014Like(String value) {
            addCriterion("status014 like", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014NotLike(String value) {
            addCriterion("status014 not like", value, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014In(List<String> values) {
            addCriterion("status014 in", values, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014NotIn(List<String> values) {
            addCriterion("status014 not in", values, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014Between(String value1, String value2) {
            addCriterion("status014 between", value1, value2, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus014NotBetween(String value1, String value2) {
            addCriterion("status014 not between", value1, value2, "status014");
            return (Criteria) this;
        }

        public Criteria andStatus015IsNull() {
            addCriterion("status015 is null");
            return (Criteria) this;
        }

        public Criteria andStatus015IsNotNull() {
            addCriterion("status015 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus015EqualTo(String value) {
            addCriterion("status015 =", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015NotEqualTo(String value) {
            addCriterion("status015 <>", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015GreaterThan(String value) {
            addCriterion("status015 >", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015GreaterThanOrEqualTo(String value) {
            addCriterion("status015 >=", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015LessThan(String value) {
            addCriterion("status015 <", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015LessThanOrEqualTo(String value) {
            addCriterion("status015 <=", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015Like(String value) {
            addCriterion("status015 like", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015NotLike(String value) {
            addCriterion("status015 not like", value, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015In(List<String> values) {
            addCriterion("status015 in", values, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015NotIn(List<String> values) {
            addCriterion("status015 not in", values, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015Between(String value1, String value2) {
            addCriterion("status015 between", value1, value2, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus015NotBetween(String value1, String value2) {
            addCriterion("status015 not between", value1, value2, "status015");
            return (Criteria) this;
        }

        public Criteria andStatus016IsNull() {
            addCriterion("status016 is null");
            return (Criteria) this;
        }

        public Criteria andStatus016IsNotNull() {
            addCriterion("status016 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus016EqualTo(String value) {
            addCriterion("status016 =", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016NotEqualTo(String value) {
            addCriterion("status016 <>", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016GreaterThan(String value) {
            addCriterion("status016 >", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016GreaterThanOrEqualTo(String value) {
            addCriterion("status016 >=", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016LessThan(String value) {
            addCriterion("status016 <", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016LessThanOrEqualTo(String value) {
            addCriterion("status016 <=", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016Like(String value) {
            addCriterion("status016 like", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016NotLike(String value) {
            addCriterion("status016 not like", value, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016In(List<String> values) {
            addCriterion("status016 in", values, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016NotIn(List<String> values) {
            addCriterion("status016 not in", values, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016Between(String value1, String value2) {
            addCriterion("status016 between", value1, value2, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus016NotBetween(String value1, String value2) {
            addCriterion("status016 not between", value1, value2, "status016");
            return (Criteria) this;
        }

        public Criteria andStatus017IsNull() {
            addCriterion("status017 is null");
            return (Criteria) this;
        }

        public Criteria andStatus017IsNotNull() {
            addCriterion("status017 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus017EqualTo(String value) {
            addCriterion("status017 =", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017NotEqualTo(String value) {
            addCriterion("status017 <>", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017GreaterThan(String value) {
            addCriterion("status017 >", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017GreaterThanOrEqualTo(String value) {
            addCriterion("status017 >=", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017LessThan(String value) {
            addCriterion("status017 <", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017LessThanOrEqualTo(String value) {
            addCriterion("status017 <=", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017Like(String value) {
            addCriterion("status017 like", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017NotLike(String value) {
            addCriterion("status017 not like", value, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017In(List<String> values) {
            addCriterion("status017 in", values, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017NotIn(List<String> values) {
            addCriterion("status017 not in", values, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017Between(String value1, String value2) {
            addCriterion("status017 between", value1, value2, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus017NotBetween(String value1, String value2) {
            addCriterion("status017 not between", value1, value2, "status017");
            return (Criteria) this;
        }

        public Criteria andStatus018IsNull() {
            addCriterion("status018 is null");
            return (Criteria) this;
        }

        public Criteria andStatus018IsNotNull() {
            addCriterion("status018 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus018EqualTo(String value) {
            addCriterion("status018 =", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018NotEqualTo(String value) {
            addCriterion("status018 <>", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018GreaterThan(String value) {
            addCriterion("status018 >", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018GreaterThanOrEqualTo(String value) {
            addCriterion("status018 >=", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018LessThan(String value) {
            addCriterion("status018 <", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018LessThanOrEqualTo(String value) {
            addCriterion("status018 <=", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018Like(String value) {
            addCriterion("status018 like", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018NotLike(String value) {
            addCriterion("status018 not like", value, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018In(List<String> values) {
            addCriterion("status018 in", values, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018NotIn(List<String> values) {
            addCriterion("status018 not in", values, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018Between(String value1, String value2) {
            addCriterion("status018 between", value1, value2, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus018NotBetween(String value1, String value2) {
            addCriterion("status018 not between", value1, value2, "status018");
            return (Criteria) this;
        }

        public Criteria andStatus019IsNull() {
            addCriterion("status019 is null");
            return (Criteria) this;
        }

        public Criteria andStatus019IsNotNull() {
            addCriterion("status019 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus019EqualTo(String value) {
            addCriterion("status019 =", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019NotEqualTo(String value) {
            addCriterion("status019 <>", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019GreaterThan(String value) {
            addCriterion("status019 >", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019GreaterThanOrEqualTo(String value) {
            addCriterion("status019 >=", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019LessThan(String value) {
            addCriterion("status019 <", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019LessThanOrEqualTo(String value) {
            addCriterion("status019 <=", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019Like(String value) {
            addCriterion("status019 like", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019NotLike(String value) {
            addCriterion("status019 not like", value, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019In(List<String> values) {
            addCriterion("status019 in", values, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019NotIn(List<String> values) {
            addCriterion("status019 not in", values, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019Between(String value1, String value2) {
            addCriterion("status019 between", value1, value2, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus019NotBetween(String value1, String value2) {
            addCriterion("status019 not between", value1, value2, "status019");
            return (Criteria) this;
        }

        public Criteria andStatus020IsNull() {
            addCriterion("status020 is null");
            return (Criteria) this;
        }

        public Criteria andStatus020IsNotNull() {
            addCriterion("status020 is not null");
            return (Criteria) this;
        }

        public Criteria andStatus020EqualTo(String value) {
            addCriterion("status020 =", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020NotEqualTo(String value) {
            addCriterion("status020 <>", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020GreaterThan(String value) {
            addCriterion("status020 >", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020GreaterThanOrEqualTo(String value) {
            addCriterion("status020 >=", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020LessThan(String value) {
            addCriterion("status020 <", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020LessThanOrEqualTo(String value) {
            addCriterion("status020 <=", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020Like(String value) {
            addCriterion("status020 like", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020NotLike(String value) {
            addCriterion("status020 not like", value, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020In(List<String> values) {
            addCriterion("status020 in", values, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020NotIn(List<String> values) {
            addCriterion("status020 not in", values, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020Between(String value1, String value2) {
            addCriterion("status020 between", value1, value2, "status020");
            return (Criteria) this;
        }

        public Criteria andStatus020NotBetween(String value1, String value2) {
            addCriterion("status020 not between", value1, value2, "status020");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria implements Serializable {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion implements Serializable {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}